package v1

import (
	dblayer "easycharts/db"
	"easycharts/model"
	"easycharts/utils/errmsg"
	"fmt"
	"net/http"

	"github.com/gin-gonic/gin"
)


func InputDiscuss(c *gin.Context) {
	var data model.Discuss
	// 解析json格式的请求
	c.ShouldBindJSON(&data)

	fmt.Println("InputDiscuss: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputDiscuss(&data)

	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})

}

func InputPost(c *gin.Context) {
	var data model.Post
	fmt.Println(data)
	// 解析json格式的请求
	c.ShouldBindJSON(&data)

	fmt.Println("InputPost: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputPost(&data)

	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}

func InputUser(c *gin.Context) {
	var data model.User
	fmt.Println(data)
	// 解析json格式的请求
	c.ShouldBindJSON(&data)

	fmt.Println("InputUser: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputUser(&data)

	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}



// template //////////////////////////////////////////////////////////////////////

// 录入员工基本信息
func InputWorker(c *gin.Context) {
	var data model.Worker
	fmt.Println(data)
	// 解析json格式的请求
	c.ShouldBindJSON(&data)

	fmt.Println("InputWorker: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputWorker(&data)
	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}


// 录入司机基本信息，如工号、姓名、性别等
func InputDriver(c *gin.Context) {
	var data model.Driver
	// 解析json格式的请求
	_ = c.ShouldBindJSON(&data)

	fmt.Println("InputDriver: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputDriver(&data)
	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}

// 录入汽车基本信息，如车牌号、座数等
func InputBus(c *gin.Context) {
	var data model.Car
	// 解析json格式的请求
	_ = c.ShouldBindJSON(&data)

	fmt.Println("InputBus: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputBus(&data)
	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}

// 录入司机的违章信息
func InputViolation(c *gin.Context) {
	var data model.VioRecord
	// 解析json格式的请求
	_ = c.ShouldBindJSON(&data)

	fmt.Println("InputViolation: ", data)

	// 根据请求对数据库执行响应操作
	code := dblayer.InputViolation(&data)
	c.JSON(http.StatusOK, gin.H{
		"status": code,
		"data":   data,
		"msg":    errmsg.GetErrMsg(code),
	})
}

